Blue Screen of Death

The Blue Screen of Death (also known as BSoD or Blue Screen), known officially as a Stop Error [1] or a bug check, is the error screen displayed by the Microsoft Windows family of operating systems upon encountering a critical error, of a non-recoverable nature, that causes the system to crash. The term is named after the color of the screen generated by the error. In Unix-based operating systems, a similar term is kernel panic.

Stop errors are hardware or driver related, causing the computer to stop responding in order to prevent damage to the hardware or data. In the later versions of Windows (Windows NT and later) the screen presents information for diagnostic purposes that was collected as the operating system performed a bug check.

Contents

History

The term Blue Screen of Death originated during development of the IBM OS/2 operating system at Lattice Inc, the makers of early Windows and OS/2 compilers. Developers encountered the error screen when bugs in the operating system's software (typically null pointers) slipped through the net during beta testing. In feedback to IBM, a company known informally as 'Big Blue', the developers humorously described the Stop screen as the 'Blue Screen of Death' in consequence of its color, of the association of that color with IBM, and of the finality of the error (which caused the computer to hang without any possibility of recovery, requiring a manual restart).

Details

If configured to do so, the computer will perform a "core dump" and save all data in memory in raw form to a disk file (known as a "dump file") for later retrieval, to assist in the analysis by an expert technician of the causes of the error.

Blue screens are typically caused by software errors in device drivers: in NT-based Windows systems by poorly-written device drivers, and in the Windows 9x family of operating systems by incompatible DLL driver files or bugs in the software kernel of the operating system.[2] They can also be caused by physical hardware faults, such as faulty RAM memory or power supplies, overheating of components, or hardware which is run beyond its specification limits ("overclocking").

These errors have been present in all Windows-based operating systems since Windows 3.1. OS/2 suffered from the Black Screen of Death (also BSOD), and early builds of Windows Vista displayed a Red Screen of Death due to a boot loader error.

Windows 1.0 and 2.0

The earliest blue screen of death was encountered upon booting into Windows 1.0, and subsequently Windows 2.0, and consisted of seemingly random data ("mess") composed of code page 437 symbols, presented against a blue background. When Windows 1.0 encountered any MS-DOS related critical system errors, it displayed a black screen of death instead.

Windows 3.x, 95, 98, and ME

The first blue screen that resembled an error screen was in the Windows 3.x series. Similar error screens appeared in Windows 95, Windows 98 and Windows ME. These presented an error message against an all-blue background, in 80-column 25-line text mode. The error screen was displayed when there was a critical startup error (such as accessing a hardware driver file that no longer existed), or in the case of some other serious fault such as an unhandled error occurring inside a VxD hardware driver file. The BSOD also occurred during system use if a device driver had to present a modal dialog to the user, such as where a removable disk was removed from the drive whilst a file was being read or written.

During a demonstration of a beta version of Windows 98 by Microsoft's Bill Gates, at COMDEX on April 20, 1998, a BSOD incident occurred in public. The computer crashed with a blue screen when his assistant (Chris Capossela, currently Microsoft's Chief Marketing Officer) connected a scanner to demonstrate Windows 98's support for Plug and Play devices. This brought applause from the crowd, and Gates replied after a pause: "That must be... er... that must be why we're not shipping Windows 98 yet!"[3]

Windows NT

In Windows NT-based operating systems, the Stop error occurs when the kernel, or a driver running in kernel mode, encounters any error from which it cannot recover. This is usually caused by an illegal operation being performed, where the only safe action the operating system can take is to restart the computer. As a result data may be lost, since the user is not given an opportunity to save any unsaved data to disk.[4]

The text on the error screen contains an error code along, four other codes whose meanings depend on the error code itself, and an error name. Depending on the error code, it may display the memory address at which the problem occurred, together with identifying details of the driver file loaded at that address. Under Windows NT and 2000, the second and third sections of the screen may list all the currently-loaded drivers and display all memory data (a "stack dump"), respectively. The driver information will list the disk address of the driver file, the file's creation date (as a Unix timestamp), and the name of the file.[5]

By default, Windows NT based systems create a memory dump file when a Stop error occurs. Depending on the operating system version, this can range from a 64 kB mini-dump to a complete dump of memory that saves the entire active contents of the RAM. The resulting file can thus be analyzed later. A kernel debugger software program may be used in order to obtain a stack trace (identifying certain memory information) to find the true cause of the error, as the on-screen information is limited and may conceal the true cause.

A Stop error can also be caused by a critical boot loader error, where the operating system is unable to start from the bootable drive due to the presence of an incorrect disk driver, a damaged file system, or a similar problem. In such cases no memory dump is saved.

Windows Vista

Stop errors in Windows Vista are rarer than any other Windows Operating System. This is because of the unique way the operating system handles Stop errors. The operating system shuts down completely, then on rebooting shows an error box with an error code. This usually happens when a driver is the problem.

Windows 8

A new version of the error screen has been seen in the developer preview of Windows 8, released in September 2011. Rather than displaying detailed technical information about the error, it simply displays a short explanation that the system needs to restart, the technical name of the error and a sad emoticon. Also it contains a lighter shade of blue in the background.[6]

Meanings

The NT-style BSOD displays error codes that explain what just happened inside the kernel. The STOP error displays five error codes in the following general form:

STOP: 0x#### (0x####, 0x####, 0x####, 0x####) Error Name

For example:[4]

STOP: 0x00000019 (0x00000000, 0xC00E0FF0, 0xFFFFEFD4, 0xC0000000) BAD_POOL_HEADER

The first code represents a specific error, while the others are additional data whose meaning depends on the error code.[4]

See also

References

Further reading